System and method for installing an application on client machine

ABSTRACT

The present disclosure relates to a system and a method for installing an application on a client machine. The installation program of the application is stored in a repository and the user requires appropriate permissions to access the repository. The user provides authentication details to the server which in turn provides the user with credentials for installation. Then, the user runs a client application and inputs the credentials thereon to install the application on the client machine. The client application then installs the application available on the repository on the client machine after authenticating the client machine with the server using the credentials.

TECHNICAL FIELD

The present disclosure relates to field of software management anddeployment. In particular, the present disclosure relates to deploymentof application in client machine in a secure and systematic manner.

BACKGROUND

Software delivery and license management has been a challenge in thefield of information technology. And most of the solutions present inthe market deploy the software by creating a package in the nativeformat. Briefly, software deployment is the process of distributing andconfiguring application programs to appropriate client locations.

In conventional solutions, software is deployed by installing an activeagent on all the client machines in an enterprise and any software thatneeds to be deployed is packaged and then scheduled for deployment onthe client machines.

All the present technologies based on active agent need one high-endserver, which either gets the information from the client machine byeither push or pull method. Further all the current active agent basedsolutions require creation of software deployment packages and cannotuse the native installation programs that come with the originalsoftware. Therefore, dependency on the active agent and package creationis usually a time consuming process and delays the deployment time.

In few conventional solutions, application is installed on the system byinformation technology staff by visiting the requestor client locationor by taking remote on the client machine. In such cases, a lot ofmanual involvement is required in installing software remotely or invisiting each client's location.

In other conventional systems, an application is installed on the clientmachine by sharing installation file with user. The user shall theninstall the software on the client machine using the shared installationfile. In case of sharing the installation with the user, administrativerights are required to be provided to the user. The user may copy theinstallation file and unauthorized distribution or installation of theapplication is probable. Additionally, several users may requiredownloading application from the server simultaneously, resulting inpeak request overloads which may crash the server.

Therefore, there exists a need to develop a system and a method fordeployment of application in a client machine in a secure and systematicmanner.

SUMMARY OF THE DISCLOSURE

In one embodiment, the present disclosure relates to a system forinstalling an application on a client machine. The system comprises arepository unit, user station, a server, a client machine and a clientapplication. The repository unit is configured to store an installationprogram of the application. The user station is configured to send arequest to the server to install the application on the client machineby providing information of user, client machine and the requestedapplication. Upon receiving the request, the server generates andprovides a key to the user station based on the information of user, theclient machine and the requested application. Finally, the clientapplication receives the provided key and launches the installationprogram on the client machine in a power user mode to install therequested application.

In one embodiment, the present disclosure relates to a method forinstalling an application on a client machine. The installation programof said application is stored in a repository unit. The method comprisessending a request to a server by user station to install the applicationby providing information of user, client machine and the requestedapplication. Upon receiving the request, generating and providing a keyto the user station, by the server, based on the information of user,the client machine and the requested application. Then, a clientapplication is started on the client machine and the provided key isinputted thereon to launch installation program by the clientapplication on the client machine in a power user mode for installingthe requested application.

BRIEF DESCRIPTION OF THE DRAWINGS

The features of the present disclosure are set forth with particularityin the appended claims. The disclosure itself, together with furtherfeatures and attended advantages, will become apparent fromconsideration of the following detailed description, taken inconjunction with the accompanying drawings. One or more embodiments ofthe present disclosure are now described, by way of example only, withreference to the accompanied drawings wherein like reference numeralsrepresent like elements and in which:

FIG. 1 illustrates a system for installing an application on clientmachine in accordance with the present disclosure.

FIG. 2 illustrates a flowchart for installing an application on clientmachine in accordance with the present disclosure.

FIGS. 3, 4 and 5 illustrate snapshots of the installation process forinstalling an application on client machine in accordance with thepresent disclosure.

The figures depict embodiments of the disclosure for purposes ofillustration only. One skilled in the art will readily recognize fromthe following description that alternative embodiments of the structuresand methods illustrated herein may be employed without departing fromthe principles of the disclosure described herein.

DETAILED DESCRIPTION

The foregoing has broadly outlined the features and technical advantagesof the present disclosure in order that the detailed description of thedisclosure that follows may be better understood. Additional featuresand advantages of the disclosure will be described hereinafter whichform the subject of the claims of the disclosure. It should beappreciated by those skilled in the art that the conception and specificembodiment disclosed may be readily utilized as a basis for modifying ordesigning other structures for carrying out the same purposes of thepresent disclosure. It should also be realized by those skilled in theart that such equivalent constructions do not depart from the spirit andscope of the disclosure as set forth in the appended claims. The novelfeatures which are believed to be characteristic of the disclosure, bothas to its organization and method of operation, together with furtherobjects and advantages will be better understood from the followingdescription when considered in connection with the accompanying figures.It is to be expressly understood, however, that each of the figures isprovided for the purpose of illustration and description only and is notintended as a definition of the limits of the present disclosure.

In one embodiment, the present disclosure relates to a system forinstalling an application on a client machine. The system comprises arepository unit, user station, a server, a client machine and a clientapplication. The repository unit is configured to store an installationprogram of the application. The user station is configured to send arequest to the server to install the application on the client machineby providing information of user, client machine and the requestedapplication. Upon receiving the request, the server generates andprovides a key to the user station based on the information of user, theclient machine and the requested application. Finally, the clientapplication receives the provided key and launches the installationprogram on the client machine in a power user mode to install therequested application.

In another embodiment of the present disclosure, the client machine ispermitted to access the repository unit in the power user mode.

In yet another embodiment of the present disclosure, the servergenerates the key upon determination of availability of the installationprogram of the requested application in the repository unit.

In still another embodiment of the present disclosure, the clientapplication launches the installation program upon authenticating theprovided key with the client machine using the server.

In another embodiment of the present disclosure, the client machineinforms the server upon installation of the requested application.

In yet another embodiment of the present disclosure, the server permitsthe installation of the requested application within a predeterminedperiod of time.

In still another embodiment of the present disclosure, the power usermode permits the client application to install the requested applicationon the client machine.

In one embodiment, the present disclosure relates to a method forinstalling an application on a client machine. The installation programof said application is stored in a repository unit. The method comprisessending a request to a server by user station to install the applicationby providing information of user, client machine and the requestedapplication. Upon receiving the request, generating and providing a keyto the user station, by the server, based on the information of user,the client machine and the requested application. Then, a clientapplication is started and the provided key is inputted thereon tolaunch installation program by the client application on the clientmachine in a power user mode for installing the requested application.

In another embodiment of the present disclosure, upon installation ofthe requested application, the client machine informs the server.

In yet another embodiment of the present disclosure, the clientapplication launches the installation program upon authenticating theprovided key on the client machine using the server.

In still another embodiment of the present disclosure, generating thekey upon determining availability of the installation program of therequested application in the repository unit.

In another embodiment of the present disclosure, the installation of therequested application is permitted within a predetermined period oftime.

FIG. 1 illustrates a system for installing an application on clientmachine in accordance with the present disclosure. The system of thepresent disclosure is based on client server architecture. The clientside of the architecture comprises of a plurality of user stations 110.The user station 110 on which the application is to be installed isreferred to as client machine 120. Further, the system comprises of arepository (not shown in the figure) which stores the installationprogram of all the applications. The request for installing anapplication on the client machine 120 can be generated by user from theclient machine 120 or any one of the user stations 110. In oneembodiment, the user station 110 generates a request for installing anapplication on the client machine 120. In addition to the request, theuser station provides user and machine identification information andinformation regarding the requested application. A server 130 receivesthe request and determines the availability of the installation programof application in the repository. Upon determination of availability,the server provides a key to the user to permit the user to install theapplication on the client machine 120. The client machine launches aclient application and inputs the key therein. In one embodiment, theserver provides an installation path to the user to launch the clientapplication. The application is then installed on the client machine 120upon verification of the inputted key. Upon installation, the clientmachine 120 informs the status of installation to the server 130.

FIG. 2 illustrates a flowchart for installing an application on clientmachine in accordance with the present disclosure.

In an embodiment, the user raises a request to the server forinstallation of required application (also referred to as software) at210. The user can raise the request from the client machine or any ofthe user stations situated on the client side of the architecture. Alongwith raising of the request, the user provides user and machineidentification information and information of the requested applicationto the server at 220. Upon receiving the request, the server will checkthe availability of the installation program of the requestedapplication in the repository at 230. In case the installation programof the requested application is not available in the repository, therequest for installation is rejected at 240. If the installation programof the requested application is available and the user is allowed toinstall the application on the client machine, the server will generatea key based on the user and machine identification information andinformation of the requested application. The server provides thegenerated key along with an installation path to access a clientapplication, to the user at 250. The generated key is unique to theclient machine for which the user has raised the request. In addition,the server will mention a predetermined period of time within which theapplication can be installed on the client machine or the time beforewhich the application has to be installed, i.e. setting a time for whichthe key will be valid for installation. In one embodiment, the period oftime can be defined by the user. In another embodiment, the period oftime can be defined by the server. The user will then start a clientapplication on the client machine by inputting the provided key into theclient application at 260. The user can also start the client applicantusing the installation path provided by the server. The serverauthenticates the provided key with the client machine and launches theinstallation program of the requested application on the client machineto install the requested application at 270. This ensures that therequested application is installed on the correct client machine and nounauthorized user is allowed to access the application. The installationprogram is launched on the client machine in a power user mode. Thepower user mode gives the client machine appropriate permissions toaccess the installation program stored in the repository for installingthe application. The client machine then installs the application andinforms the server regarding the status of installation.

FIGS. 3, 4 and 5 illustrate snapshots of the installation process forinstalling an application on client machine in accordance with thepresent disclosure.

FIG. 3 illustrates the process of sending request to the server forinstalling the application. The snapshot shows information provided bythe user to the server for installing an application on the clientmachine. The user provides location of the client machine, requestidentification number, e-mail identification of the user of the clientmachine where the application is to be installed, name of the clientmachine, hardware asset identification of the client machine. Inaddition to these user and machine identification information, theclient selects the required application to be installed and providessoftware asset identification. Also, the user can specify the timeperiod within which the user wants to install the application on theclient machine. After the expiration of said time period, theapplication will not be available for installation on the clientmachine. The user provides all these information and submits the requestfor application installation.

FIG. 4 illustrates the snapshot showing scheduling of applicationinstallation by the server. Upon receiving the request for applicationinstallation along with the information of client machine, the serverdetermines availability of the application in the repository andgenerates an installation key unique to the client machine. Theinstallation key is generated based on information of user, clientmachine and the application required to be installed. The serverprovides the installation key and optionally an installation path foraccessing a client application to the user. The installation path allowsthe user to launch a client application and install the applicationstored in the repository. In one exemplary embodiment, the serverprovides the installation key and the installation path through e-mail.

FIG. 5 illustrates the snapshot of the client application launched bythe client machine. The client machine launches the client applicationusing the installation path provided by the server and inputs theinstallation key therein. Upon inputting the installation key, theserver authenticates the client machine for installation. Subsequently,the client application installs the application on the client machine.Upon installation, the client machine informs the server about theinstallation status.

The present disclosure reduces the manual effort and involvement ininstalling application on end user system. In the present disclosure,the application is installed on the client machine without sharing theinstallation file with the client. Therefore, any unauthorizedinstallation of application is avoided. Further, the present disclosureenables the user to install the application on the client machinewithout providing administrative privileges. Further, the presentdisclosure uses the native installation package that comes with theapplication and does not require creation of separate package forinstallation of the application. Also, the time taken for applicationinstallation is significantly reduced the present disclosure does notrequire creation of package.

The present disclosure is not to be limited in terms of the particularembodiments described in this application, which are intended asillustrations of various aspects. Many modifications and variations canbe made without departing from its spirit and scope, as will be apparentto those skilled in the art. Functionally equivalent methods and deviceswithin the scope of the disclosure, in addition to those enumeratedherein, will be apparent to those skilled in the art from the foregoingdescriptions. Such modifications and variations are intended to fallwithin the scope of the appended claims. The present disclosure is to belimited only by the terms of the appended claims, along with the fullscope of equivalents to which such claims are entitled. It is also to beunderstood that the terminology used herein is for the purpose ofdescribing particular embodiments only, and is not intended to belimiting.

While various aspects and embodiments have been disclosed herein, otheraspects and embodiments will be apparent to those skilled in the art.The various aspects and embodiments disclosed herein are for purposes ofillustration and are not intended to be limiting, with the true scopeand spirit being indicated by the following claims.

1. A system for installing an application on a client machine, saidsystem comprises: a repository unit configured to store an installationprogram of the application; user station configured to send a request toa server to install the application on the client machine by providinginformation of user, client machine and the requested application; theserver configured to generate and provide a key to the user stationbased on the information of user, the client machine and the requestedapplication; and a client application configured to receive the providedkey and launch the installation program on the client machine in a poweruser mode to install the requested application.
 2. The system as claimedin claim 1, wherein the client machine is permitted to access therepository unit in the power user mode.
 3. The system as claimed inclaim 1, wherein the server generates the key upon determination ofavailability of the installation program of the requested application inthe repository unit.
 4. The system as claimed in claim 1, wherein theclient application launches the installation program upon authenticatingthe provided key with the client machine using the server.
 5. The systemas claimed in claim 1, wherein the client machine informs the serverupon installation of the requested application.
 6. The system as claimedin claim 1, wherein the server permits the installation of the requestedapplication within a predetermined period of time.
 7. The system asclaimed in claim 1, wherein the power user mode permits the clientapplication to install the requested application on the client machine.8. A method for installing an application on a client machine, theinstallation program of said application being stored in a repositoryunit, said method comprising acts of: sending a request to a server byuser station to install the application by providing information ofuser, client machine and the requested application; generating andproviding a key to the user station, by the server, based on theinformation of user, the client machine and the requested application;and starting a client application and inputting the provided key tolaunch installation program by the client application on the clientmachine in a power user mode for installing the requested application.9. The method as claimed in claim 8, wherein upon installation of therequested application, the client machine informs the server.
 10. Themethod as claimed in claim 8, wherein the client application launchesthe installation program upon authenticating the provided key on theclient machine using the server.
 11. The method as claimed in claim 8,wherein generating the key upon determining availability of theinstallation program of the requested application in the repositoryunit.
 12. The method as claimed in claim 8, wherein the installation ofthe requested application is permitted within a predetermined period oftime.